Add ROS_PYTHON_VERSION to dependency conditionals. #551
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The ROS_PYTHON_VERSION conditional is referenced in REP-149 as a standard mechanism for determining the python major version used within a ROS workspace. For most ROS tools, package conditions can be taken from the local environment but Bloom has a different role: generating platform specific release information from a developer's workstation which may not match the targeted platforms. As with #519, bloom does not take package conditions from the local environment but instead from the distribution configuration. To support this both here and in other tools, REP-153 was amended (see ros-infrastructure/rep#207) to include a
python_version
field in the distribution information. Bloom now uses this to provide ROS_PYTHON_VERSION as a package condition.Support for arbitrary package conditions is not introduced in this PR. Some discussion has been made of embedding a dict of conditions into the tracks.yaml file bloom uses to configure release tracks but some refactoring is required to wire that through and I'd rather wait until we have #539 merged to take that on.